Field of the Invention
This invention relates to an image forming apparatus, a control program for the image forming apparatus, a controller, and a control program for the controller. More specifically, this invention relates to an image forming apparatus, a control program for the image forming apparatus, a controller, and a control program for the controller which execute rebuilding processes.
Description of the Related Art
According to improvement of high resolution of video data and image data, and networks proliferation etc., it is required to increase largely recording capacity for fixed storage devices such as a HDD (Hard Disk Drive), a SSD (Solid State Drive), or the like. It is required for an image forming apparatus with a fixed storage device, to read/write data fast (improve performance) and store data safely (improve the backup function).
In case that an image forming apparatus stores all the data in one fixed storage device, all the data may be lost by the occurrence of trouble in the fixed storage device. In particular, trouble can easily arise in HDDs, since HDDs have movable parts.
There are technologies of RAID (Redundant Arrays of Inexpensive Disks) using a plurality of fixed storage devices, to improve performance and the backup function of an image forming apparatus. RAID has a plurality of writing methods such as RAID0, RAID1, or the like.
RAID0 is a technique which is so called a striping. When data writing by RAID0, data is devided into a plurality of divided data pieces by the block. Each of a plurality of divided data pieces is written in the corresponding fixed storage device. When data reading by RAID0, the divided data pieces are read from each of a plurality of fixed storage devices in parallel. Herewith, writing speed for the fixed storage device can be improved, and the performance of the image forming apparatus can be improved.
RAID1 is a technique which is so called mirroring. When data writing by RAID1, data is copied. Each of same data pieces are written in a plurality of fixed storage devices. When data reading by RAID1, data pieces are read from only one normal fixed storage device, out of the plurality of fixed storage devices. Herewith, when trouble occurs at a fixed storage device out of a plurality of fixed storage devices, the data can be read from a normal fixed storage device. Therefore, the backup function of the image forming apparatus can be improved. In case one fixed storage device among a plurality of fixed storage devices which execute mirroring broke down, an image forming apparatus executes rebuilding processes. The rebuilding processes mean processes for copying data which had been stored in a fixed storage device which is working in a normal way, to the fixed storage device which was recovered from the failure (or, to a newly replaced fixed storage device).
In an image forming apparatus, a subject which executes rebuilding processes and a subject which accesses a fixed storage device (a subject which writes data into the fixed storage device or a subject which reads data from the fixed storage device) are different from each other. More specifically, a RAID controller typically executes rebuilding processes or processes relating to the RAID. On the other hand, a CPU (Central Processing Unit) which controls behavior of the entire image forming apparatus accesses the fixed storage device. The rebuilding processes are performed in the judgment of the RAID controller.
Documents 1 and 2 below disclose techniques related to rebuilding processes. According to document 1 below, when hosts do not request for accesses within a certain time during rebuilding processes for a HDD, the size of data to be processed on a rebuilding process becomes larger than the normal size of data to be processed on a rebuilding process. Herewith, it can shorten the time for rebuilding processes.
In Document 2 below, resources are allocated to rebuilding processes. In case that a predetermined process is requested during the rebuilding processes, remaining resources are allocated to the requested processes, based on determination whether there are enough remaining resources for executing the requested process or not.
[Document 1] Japan Patent Publication No. 2007-94994
[Document 2] Japan Patent Publication No. 2013-58103
A CPU accesses a fixed storage device, regardless of whether rebuilding processes are being executed or not. In consequence, when a CPU accesses a fixed storage device during rebuilding processes under the conventional technology, a data reading by a RAID controller from a fixed storage device which stores original data of the rebuilding processes may conflict with accesses by the CPU to the fixed storage device which stores original data of the rebuilding processes. Also, a data writing by a RAID controller to a fixed storage device which stores copied data of the rebuilding processes may conflict with accesses by the CPU to the fixed storage device which stores copied data of the rebuilding processes. This causes slowdowns on the access speed of the CPU to the fixed storage device. Hence, the processing may be delayed.
Especially, in case that an image forming apparatus is a MFP (Multifunction Peripheral), when a CPU of the MFP performs copy jobs, print jobs, scan jobs, or the like, the CPU writes image data to be processed into a fixed storage device, or reads image data to be processed from the fixed storage device. The transfer speed to the fixed storage device is slow, as compared with a working speed of an images processing circuit of the MFP. Hence, slowdowns of access speed to fixed storage device cause performance degradation of the MFP itself. More specifically, the access speed by a CPU to a HDD during the rebuilding processes decreases to about 40% of access speed by the CPU to the HDD when rebuilding processes are not performed.